﻿// 麻省理工学院许可证
//
// 版权所有 (c) 2021-2023 zuohuaijun，大名科技（天津）有限公司  联系电话/微信：18020030720  QQ：515096995
//
// 特此免费授予获得本软件的任何人以处理本软件的权利，但须遵守以下条件：在所有副本或重要部分的软件中必须包括上述版权声明和本许可声明。
//
// 软件按“原样”提供，不提供任何形式的明示或暗示的保证，包括但不限于对适销性、适用性和非侵权的保证。
// 在任何情况下，作者或版权持有人均不对任何索赔、损害或其他责任负责，无论是因合同、侵权或其他方式引起的，与软件或其使用或其他交易有关。

using System;
using System.Collections.Generic;
using System.Linq;
using System.Management;
using System.Text;
using System.Threading.Tasks;

namespace Dragon.HighReport
{
    internal class MachineHelper
    {
        public static string SerialNumber()
        {
            string text = string.Empty;
            ManagementClass managementClass = new ManagementClass("Win32_BaseBoard");
            ManagementObjectCollection instances = managementClass.GetInstances();
            using (ManagementObjectCollection.ManagementObjectEnumerator enumerator = instances.GetEnumerator())
            {
                if (enumerator.MoveNext())
                {
                    ManagementObject managementObject = (ManagementObject)enumerator.Current;
                    text = Convert.ToString(managementObject.Properties["SerialNumber"].Value);
                }
            }
            return text;
        }

        // Token: 0x0600024D RID: 589 RVA: 0x00025BD4 File Offset: 0x00023DD4
        public static string b()
        {
            string text = string.Empty;
            ManagementClass managementClass = new ManagementClass("Win32_Processor");
            ManagementObjectCollection instances = managementClass.GetInstances();
            using (ManagementObjectCollection.ManagementObjectEnumerator enumerator = instances.GetEnumerator())
            {
                if (enumerator.MoveNext())
                {
                    ManagementObject managementObject = (ManagementObject)enumerator.Current;
                    text = Convert.ToString(managementObject.Properties["ProcessorId"].Value);
                }
            }
            return text;
        }

        // Token: 0x0600024E RID: 590 RVA: 0x00025C60 File Offset: 0x00023E60
        public static string MacAddress()
        {
            string text = string.Empty;
            ManagementClass managementClass = new ManagementClass("Win32_NetworkAdapterConfiguration");
            ManagementObjectCollection instances = managementClass.GetInstances();
            foreach (ManagementBaseObject managementBaseObject in instances)
            {
                ManagementObject managementObject = (ManagementObject)managementBaseObject;
                bool flag = managementObject.Properties["MacAddress"].Value == null || string.IsNullOrEmpty(managementObject.Properties["MacAddress"].Value.ToString());
                if (!flag)
                {
                    bool flag2 = (bool)managementObject["IPEnabled"];
                    if (flag2)
                    {
                        text = Convert.ToString(managementObject.Properties["MacAddress"].Value);
                        text = text.Replace(":", "");
                        break;
                    }
                }
            }
            return text;
        }
    }
}
